freecivfandomcom-20200223-history
How to update a tileset from 1.14 to 2.0
Most of the necessary changes are in the .tilespec file. Some new data needs to be added to the tileset. For non-iso tilesets you should copy the data from trident.tilespec (in the main distribution) into your tilespec files. For iso tilesets copy the data from isotrident.tilespec, and for hex tilesets from isophex.tilespec. * Terrain and layer data must be copied in this way. This is the long series of lines below the list of files in the .tilespecs. * roadstyle, fogstyle, darkness_style, flag_offset_x, and flag_offset_y values must also be copied. These can simply be cut-and-pasted anywhere. * Also you have to update the capstrings. The options field at the top of the .tilespec file should be have +tilespec2 changed to +tilespec3. Similarly the options field of the .spec files should have +spec2 changed to +spec3. * Some specfiles have moved. Tilesets that pointed to "trident/flags.spec" should instead point to "misc/flags.spec". * All directional sprites must be renamed. Previously road sprites had names like "n0s0e0w0" (NSEW). Now they are in clockwise order as "n0e0s0w0". This applies to roads, rail, and most terrain graphics. * In non-iso tilesets the diagonal road/rail sprites must be renamed as ne0se0sw0nw0. * In iso tilesets forest, hill, and mountain sprites must be renamed. A sprite tx.s_forest_XXX must be renamed as t.forest_XXX, an tx.s_mountain_XXX as t.mountains_XXX, and a tx.s_hill_XXX as t.hills_XXX. * In iso tileset the 32 coast_cape sprites must be renamed. A sprite tx.coast_cape_uN should be renamed as t.ocean_cell_uM. N is the number of the coast_cape (0..7), while M is this same number in 3-digit reversed binary (so 1 becomes 100, 6 becomes 011). * Specialist graphics must be renamed. citizen.entertainer is renamed as specialist.elvis_0, tax_collector is renamed as taxman and the scientist must also be renamed. (These tags are in misc/small.spec, so you'll only run into this problem if you have your own small.spec.) * All of the above can be done by running the ftp://ftp.freeciv.org/freeciv/contrib/tilesets/update_tileset script. * In non-iso tilesets, the coast_cape sprites must be renamed. Remove the coast_cape section and add a grid_ocean section like trident has. (In some cases the tileset will fail without the coast_cape; in other cases it won't. I'm not sure what causes this but without them the coastline will probably not look right in any case.) * Nuke graphics must be merged. Instead of 9 different nuke_xy sprites there should just be one sprite explode.nuke. For iso tilesets you need only rename the explode.iso_nuke graphic as explode.nuke. * The unit.loaded sprite should be created and added. * The unit.lowfuel and unit.tired sprites should be added. * The upkeep.gold and upkeep.gold2 sprites should be added. * The s.tag_luxury, s.tag_gold, and s.tag_science tags must be added. These normally go into misc/small.spec, but if you have your own "small" graphics you should have them point to the elvis, taxman, and scientist specialist sprites. * The tx.darkness tag must be added. This should point to the same graphic as the t.dither_tile tag. * If the tilespec file points to trident/flags.spec or isotrident/flags.spec, it should be changed to point to misc/flags.spec. Of course, results may vary from tileset to tileset. Category:Editing tilesets